package se.webbzon.boltzmann.collector;

import se.webbzon.oschi01.worldobject.WorldObject;

public interface CollectorListener<T extends WorldObject> {
	
	/*============================================================
	Public Methods
	============================================================*/
	
	/** This method is invoked when a collected instance is created in
	 * the world in which the given collector exists. **/
	public void onCreateInstance(Collector<T> collector, T instance);
	
	/** This method is invoked when a collected instance is destroyed in
	 * the world in which the given collector exists. **/
	public void onDestroyInstance(Collector<T> collector, T instance);
	
	/** This method is invoked when the given collector is destroyed. **/
	public void onDestroyCollector(Collector<T> collector);

}
